feat: add support for multisig actor in state decode params API#5895
feat: add support for multisig actor in state decode params API#5895LesnyRumcajs merged 5 commits intomainfrom
Conversation
WalkthroughThis change introduces support for the Multisig actor in the Filecoin.StateDecodeParams API, covering versions 8 through 16. It adds JSON serialization/deserialization logic for all multisig method parameters, registers these methods in the RPC registry, and extends test coverage with new multisig-related parameter tests and snapshots. Changes
Sequence Diagram(s)sequenceDiagram
participant Client
participant API
participant Registry
participant MultisigJson
participant Lotus
Client->>API: StateDecodeParams(Multisig method, params bytes)
API->>Registry: Lookup method by actor/version
Registry->>MultisigJson: Deserialize params bytes to JSON
MultisigJson-->>Registry: JSON params object
Registry-->>API: Decoded params
API-->>Client: Return decoded params (Forest/Lotus comparison)
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~20 minutes Assessment against linked issues
Assessment against linked issues: Out-of-scope changesNo out-of-scope changes detected. Suggested reviewers
Note ⚡️ Unit Test Generation is now available in beta!Learn more here, or try it out under "Finishing Touches" below. 📜 Recent review detailsConfiguration used: CodeRabbit UI 📒 Files selected for processing (7)
✅ Files skipped from review due to trivial changes (2)
🚧 Files skipped from review as they are similar to previous changes (4)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (9)
🔇 Additional comments (6)
✨ Finishing Touches
🧪 Generate unit tests
🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
SupportNeed help? Create a ticket on our support page for assistance with any issues or questions. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
| 14 => register_multisig_v9_plus!(registry, cid, fil_actor_multisig_state::v14), | ||
| 15 => register_multisig_v9_plus!(registry, cid, fil_actor_multisig_state::v15), | ||
| 16 => register_multisig_v9_plus!(registry, cid, fil_actor_multisig_state::v16), | ||
| _ => {} |
There was a problem hiding this comment.
same as in the other PR - we shouldn't silently fail.
There was a problem hiding this comment.
| filecoin_statedecodeparams_1753985928337192.rpcsnap.json.zst | ||
| filecoin_statedecodeparams_1753985928337443.rpcsnap.json.zst | ||
| filecoin_statedecodeparams_1753985928337618.rpcsnap.json.zst | ||
| filecoin_statedecodeparams_1754230255606413.rpcsnap.json.zst |
There was a problem hiding this comment.
let's add multisig somewhere?
There was a problem hiding this comment.
lets also add method name here, so we know which method is getting tested
09d94d3 to
b13cea9
Compare
Summary of changes
Changes introduced in this pull request:
Reference issue to close (if applicable)
Closes: #5718
Other information and links
Change checklist
Summary by CodeRabbit
Summary by CodeRabbit